//#include<iostream>
//#include<string>
//
//using namespace std;
//
//int main()
//{
//    string s;
//    while (cin >> s)
//    {
//        int h[52] = {0};
//        for (int i = 0; i < s.size(); i++)
//        {
//            if (islower(s[i]))
//                h[s[i] - 'a']++;
//            else
//                h[s[i] - 'A' + 26]++;
//        }
//        for (int i = 0; i < s.size(); i++)
//        {
//            if (islower(s[i]) && h[s[i] - 'a'] == 1 || isupper(s[i]) && h[s[i] - 'A' + 26] == 1)
//            {
//                cout << i << endl;
//                break;
//            }
//        }
//    }
//    return 0;
//
//}

//#include<queue>
//#include<string>
//#include<iostream>
//#include<map>
//using namespace std;
//typedef pair<string, int> node;
//map<string,int> m;
//
//struct cmp
//{
//	bool operator()(const node& n1, const node& n2)
//	{
//		return n1.second < n2.second || n1.second == n2.second && n1.first > n2.first;
//	}
//};
//
//priority_queue<node, vector<node>, cmp> pq;
//
//int main()
//{
//	int k; cin >> k;
//	string s;
//	cin >> s;
//	while (s != "end")
//	{
//		m[s]++;
//		cin >> s;
//	}
//	for (auto& e : m)
//	{
//		pq.push(e);
//	}
//	for (int i = 0; i < k; i++)
//	{
//		auto e = pq.top();
//		pq.pop();
//		cout << e.first << endl;
//	}
//	return 0;
//}

//#include<iostream>
//#include<string>
//#include<cstdio>
//#include<algorithm>
//using namespace std;
//
//int maxg(int a, int b)
//{
//	int c = a % b;
//	if (c == 0) return b;
//	else return maxg(b, c);
//}
//
//void appx(const string& s1, const string& s2)
//{
//	// s1.size() > s2.size()
//	int ret = 0;
//	for (int i = 0; i + s2.size() <= s1.size(); i++)
//	{
//		int t = 0;
//		for (int j = 0; j < s2.size(); j++)
//			if (s1[j + i] == s2[j])
//				t++;
//		ret = max(ret, t);
//	}
//	if (ret == 0) cout << 0 << endl;
//	else 
//	{
//		int s = s1.size() + s2.size();
//		int m = maxg(ret * 2, s);
//		cout << ret * 2 / m << "/" << s / m << endl;
//	}
//}
//
//int main()
//{
//	string s1, s2;
//	while (1)
//	{
//		cin >> s1; if (s1 == "-1") break;
//		cin >> s2;
//		printf("appx(%s,%s)=", s1.c_str(), s2.c_str());
//		if (s1.size() < s2.size())
//			s1.swap(s2);
//		appx(s1, s2);
//	}
//	return 0;
//}

//#include<string>
//#include<iostream>
//
//using namespace std;
//
//int main()
//{
//	string s; cin >> s;
//	int jug; cin >> jug;
//	if (!jug)
//		for (int i = 0; i < s.size(); i++)
//			s[i] = tolower(s[i]);
//	int n; cin >> n;
//	while (n--)
//	{
//		string t; cin >> t;
//		string out(t);
//		if (!jug)
//		{
//			for (int i = 0; i < t.size(); i++)
//				t[i] = tolower(t[i]);
//		}
//		if (t.find(s) != -1) cout << out << endl;
//	}
//	return 0;
//}
//
